home *** CD-ROM | disk | FTP | other *** search
/ MacWorld 1999 January - Disc 2 / Macworld (1999-01) (Disk 2).dmg / Serious Demos / Symbolic Composer 4.2 / Environment / Projects / Tutorial Material / Pitch and Rhythm Tutorial / len-to-tick conversion < prev    next >
Lisp/Scheme  |  1998-10-26  |  734b  |  42 lines

  1. ; template for conversion of lengths to tick values.
  2.  
  3. (def-neuron len
  4.   (out-range 0 0)
  5.   (otherwise (get-tick (in 1 0)))
  6. )
  7.  
  8. (setq tics (run-neuron 'len
  9.                        '(1/4 1/8-5 1/8t 1/4-7 1/1)))
  10.  
  11.  
  12. ; try evaluating the following expressions one by one
  13.  
  14. (setq rhy '(1/4 1/4 1/2 1/8))
  15.  
  16. (get-tick '1/4)
  17.  
  18. (defun tickcalc (list-of-lengths)
  19.       (mapcar 'get-tick list-of-lengths))
  20.  
  21. ; mapcar applies a function to succesive items in a list.
  22.  
  23. (tickcalc rhy)
  24.  
  25. (setq rhy1 (tickcalc '(1/4 1/2 1/8-5 1/8-5 1/8-5 -1/8-5 1/8-5 1/4)))
  26.  
  27.  
  28.  
  29. ; additional SC internals useful for creating functions.
  30.  
  31. (symbol-to-integer 'b)
  32. ; --> 1
  33. (integer-to-symbol 1)
  34. ; --> b
  35. (abs-to-nam 1)
  36. ; --> c#
  37. (note-to-abs 'c# 0)
  38. ; --> 1
  39. (abs-to-oct 5)
  40. ; --> 5/12
  41.  
  42.